上篇講到使用類別或是模組的時機,
這篇我們來看看如何在類別內引入模組的方法。
類別引入模組最常使用include,
能將模組的方法,當成實體方法使用。
因為是作用在實體上,
所以要產生一個實體。
module Flyable
attr_accessor :name
def fly
puts "#{name} is flying..."
end
end
class Bird
include Flyable
end
bird = Bird.new
bird.name = "BB"
bird.fly #BB is flying...
類別引入模組還可以使用extend,
能將模組的方法,當成類別方法使用。
module Flyable
attr_accessor :name
def fly(name)
puts "#{name} is flying..."
end
end
class Bird
extend Flyable
end
Bird.fly("BB") #BB is flying...
Ruby
include
extend